;补全程序 ，把a中的数据累加并保存到b所在的双字中
;本题是属于需要边累加边存储，因为观察题目，只进行了一次循环
assume cs:code
code segment
	a dw 0ffffh,0ffffh,0ffffh,0ffffh,0ffffh,0ffffh,0ffffh,0ffffh
	b dd 0
	
	start:
	mov si,0
	mov cx,8
	s:
	mov ax,a[si] ;
	add word ptr b,ax  ;一开始的时候，直接写的 b,ax，有编译警告（类型不匹配）
	adc word ptr b[2],0 ;此处用word ptr b[2]，保证了指向的是b中的高位字节，具体见后记
	add si,2
	loop s
	
	mov ax,4c00h
	int 21h
	
code ends
end start

;后记：设b的地址是：cs:0010 在内存中为 00 00 00 00 ，用word ptr b 则指向的是cs:0010，占用了0010和0011二个字节；
;而用 word ptr b[2]则指向了cs:0012，也就是指向了b这个32位数据的高16位的起始地址：0012,0013